<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        /*
            作用域
                -作用域指一个变量的作业范围
                -在js中一共有两种作用域

                1.全局作用域
                    -直接写在sript标签中的js代码，都在全局作用域
                    -全局作用域在页面打开时创建，在页面关闭时销毁
                    -在全局作业域中有一个全局对象window
                        它代表的是一个浏览器的窗口，它由浏览器创建我们可以直接使用
                    -在全局作用域中：
                        创建的变量都会作为window对象的属性保存
                        全局作用域中的变量都是全局变量
                            在页面的任意部分都可以访问到
                        
                2.函数作用域
        */

        /*
            变量的声明提前
                -使用var关键字声明的变量，会在所有的代码执行之前被声明，
                    但是如果声明变量时不适用var关键字，则变量不会被声明提前

            函数的声明提前
                -使用函数声明形式创建的函数function 函数（）{}
                它会在所有的代码执行之前就被创建
                -使用函数表达式创建的函数，不会被声明提前，所以不能在声明前调用
        */
        fun2();
        //
        function fun2(){
            console.log("fun2");
        };
        // 函数表达式
        var fun=function(){
            console.log("fun");
        }
        fun();

    </script>
</head>
<body>
    
</body>
</html>